import 'package:get/get.dart';
import 'package:getxdemo_2/common/api/ApiService.dart';
import 'package:getxdemo_2/common/entity/MovieModel.dart';

// 3.使用控制器对数据进行处理
// 我们对请求回来的网络数据转化为Model，并在请求前增加一个loading，当网络数据请求回来的时候关闭loading，我们来看一下代码
class MovieController extends GetxController {
  var isLoading = true.obs;
  // ignore: deprecated_member_use
  var movieList = <MovieModel>[].obs;

  @override
  void onInit() {
    // TODO: implement onInit
    fetchMovie();
    super.onInit();
  }

  void fetchMovie() async {
    try {
      isLoading(true);
      var movie = await ApiService.fetchMovie();
      if (movie != null) {
        movieList.assignAll(movie);
      }
    } finally {
      isLoading(false);
    }
  }
}